class Solution {
public:
    ListNode* swapPairs(ListNode* head) {
        ListNode *_dummyhead=new ListNode(0,head);
        ListNode *cur=_dummyhead;
        while(cur->next!=nullptr&&cur->next->next!=nullptr)
        {
            ListNode* tmp1=cur->next;
            ListNode* tmp2=cur->next->next;
            ListNode* tmp3=cur->next->next->next;
            cur->next=tmp2;
            tmp2->next=tmp1;
            tmp1->next=tmp3;
            cur=cur->next->next;
        }
        return _dummyhead->next;
    }
};